package com.company.service;

import com.company.entity.PageResult;
import com.company.pojo.CheckGroup;
import com.company.pojo.CheckItem;

import java.util.List;

public interface CheckGroupService {


    /**
     * @date 分页查询业务查询业务
     * @param currentPage 查询开始的下标
     * @param pageSize    查询每页的大小
     * @param queryString  按照 某一字段查询 ，（详细查询）
     * @return PageResult  分页结果封装对象
     */
    PageResult pageQuery(Integer currentPage, Integer pageSize, String queryString);


    /**
     * @date  增加检查组信息
     * @param checkGroup    检查组信息
     * @param checkItemIds  检查组所关联的检查项 （检查组拥有的检查项）
     */
    void addCheckGroup(CheckGroup checkGroup, Integer[] checkItemIds);

    /**
     * @date 展示检查项信息  (用于增加检查组时显示检查项)
     */
    List<CheckItem> findAllFromCheckItem();

    /**
     * @date  根据id删除检查组
     * @param id
     */
    void delete(Integer id);

    /**
     * @date  根据id查询检查组
     * @param id
     */
    CheckGroup findById(Integer id);

    /**
     * @date  根据 检查组ID 查询对应的 检查项 （检查组拥有的检查项）
     * @param id 检查组ID
     */
     List<Integer> findCheckItemIdsByCheckGroupId(Integer id);


    /**
     * @date  修改检查组信息
     * @param checkGroup    检查组信息
     * @param checkItemIds  检查组所关联的检查项 （检查组拥有的检查项）
     */
    void edit(CheckGroup checkGroup, Integer[] checkItemIds);
}
